import {DataBaseDto} from "../../../common/dto/data-base.dto";
import {IsJSON, IsNumber, IsObject, IsString} from "class-validator";
import {Excel} from "../../common/excel/excel.decorator";

export class AddDemoDto extends DataBaseDto {
  /* 菜单名称 */
  @IsNumber()
  projectId: number;
}

export class UpdateDto {
  @IsNumber()
  id: number;

  @IsObject()
  nonDM: string;

  @IsObject()
  royalty_sw: string;

  @IsObject()
  mva: string;

  @IsObject()
  logistics: string;

  @IsObject()
  quallty: string;

  @IsObject()
  tooling_scrap: string;

  @IsObject()
  me_cmf: string;

  @IsObject()
  rf: string;

  @IsObject()
  nfc: string;

  @IsObject()
  wifi: string;

  @IsObject()
  dp: string;

  @IsObject()
  audio: string;

  @IsObject()
  charging: string;

  @IsObject()
  wlc: string;

  @IsObject()
  ip: string;

  @IsObject()
  pkg: string;

  @IsObject()
  acc: string;

  @IsObject()
  sensors: string;

  @IsObject()
  roBU: string;

  @IsObject()
  chipset: string;

  @IsObject()
  memory: string;

  @IsObject()
  charger: string;

  @IsObject()
  battery: string;

  @IsObject()
  display1: string;

  @IsObject()
  display2: string;

  @IsObject()
  cam1: string;

  @IsObject()
  cam2: string;

  @IsObject()
  cam3: string;

  @IsObject()
  cam4: string;

  @IsObject()
  cam5: string;

  @IsObject()
  fCam1: string;

  @IsObject()
  fCam2: string;

  @IsObject()
  fps: string;

  @IsString()
  android: string;

  @IsString()
  od: string;

  @IsString()
  handbook: string;

  @IsString()
  notes: string;
}

export class ImportDataDto {
  /* 菜单名称 */
  @IsString()
  @Excel({
    name: 'ProjectName',
  })
  projectName: string;

  @IsNumber()
  @Excel({
    name: 'NonDM_Price',
  })
  nonDM_Price: number;

  @IsString()
  @Excel({
    name: 'NonDM_Note',
  })
  nonDM_Note: string;


  @IsNumber()
  @Excel({
    name: 'Royalty_sw_Price',
  })
  royalty_sw_Price: number;

  @IsString()
  @Excel({
    name: 'Royalty_sw_Note',
  })
  royalty_sw_Note: string;


  @IsNumber()
  @Excel({
    name: 'MVA_Price',
  })
  mva_Price: number;

  @IsString()
  @Excel({
    name: 'MVA_Note',
  })
  mva_Note: string;


  @IsNumber()
  @Excel({
    name: 'Logistics_Price',
  })
  logistics_Price: number;

  @IsString()
  @Excel({
    name: 'Logistics_Note',
  })
  logistics_Note: string;


  @IsNumber()
  @Excel({
    name: 'Quallty_Price',
  })
  quallty_Price: number;

  @IsString()
  @Excel({
    name: 'Quallty_Note',
  })
  quallty_Note: string;


  @IsNumber()
  @Excel({
    name: 'Tooling_scrap_Price',
  })
  tooling_scrap_Price: number;

  @IsString()
  @Excel({
    name: 'Tooling_scrap_Note',
  })
  tooling_scrap_Note: string;


  /* end 没有 desc */
  @IsString()
  @Excel({
    name: 'Me_cmf_Desc',
  })
  me_cmf_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Me_cmf_Price',
  })
  me_cmf_Price: number;

  @IsString()
  @Excel({
    name: 'Me_cmf_Note',
  })
  me_cmf_Note: string;


  @IsString()
  @Excel({
    name: 'Rf_Desc',
  })
  rf_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Rf_Price',
  })
  rf_Price: number;

  @IsString()
  @Excel({
    name: 'Rf_Note',
  })
  rf_Note: string;


  @IsString()
  @Excel({
    name: 'Nfc_Desc',
  })
  nfc_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Nfc_Price',
  })
  nfc_Price: number;

  @IsString()
  @Excel({
    name: 'Nfc_Note',
  })
  nfc_Note: string;


  @IsString()
  @Excel({
    name: 'Wifi_Desc',
  })
  wifi_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Wifi_Price',
  })
  wifi_Price: number;

  @IsString()
  @Excel({
    name: 'Wifi_Note',
  })
  wifi_Note: string;


  @IsString()
  @Excel({
    name: 'Dp_Desc',
  })
  dp_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Dp_Price',
  })
  dp_Price: number;

  @IsString()
  @Excel({
    name: 'Dp_Note',
  })
  dp_Note: string;


  @IsString()
  @Excel({
    name: 'Audio_Desc',
  })
  audio_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Audio_Price',
  })
  audio_Price: number;

  @IsString()
  @Excel({
    name: 'Audio_Note',
  })
  audio_Note: string;


  @IsString()
  @Excel({
    name: 'Charging_Desc',
  })
  charging_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Charging_Price',
  })
  charging_Price: number;

  @IsString()
  @Excel({
    name: 'Charging_Note',
  })
  charging_Note: string;


  @IsString()
  @Excel({
    name: 'Wlc_Desc',
  })
  wlc_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Wlc_Price',
  })
  wlc_Price: number;

  @IsString()
  @Excel({
    name: 'Wlc_Note',
  })
  wlc_Note: string;


  @IsString()
  @Excel({
    name: 'Ip_Desc',
  })
  ip_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Ip_Price',
  })
  ip_Price: number;

  @IsString()
  @Excel({
    name: 'Ip_Note',
  })
  ip_Note: string;


  @IsString()
  @Excel({
    name: 'Pkg_Desc',
  })
  pkg_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Pkg_Price',
  })
  pkg_Price: number;

  @IsString()
  @Excel({
    name: 'Pkg_Note',
  })
  pkg_Note: string;


  @IsString()
  @Excel({
    name: 'Acc_Desc',
  })
  acc_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Acc_Price',
  })
  acc_Price: number;

  @IsString()
  @Excel({
    name: 'Acc_Note',
  })
  acc_Note: string;


  @IsString()
  @Excel({
    name: 'Sensors_Desc',
  })
  sensors_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Sensors_Price',
  })
  sensors_Price: number;

  @IsString()
  @Excel({
    name: 'Sensors_Note',
  })
  sensors_Note: string;


  @IsString()
  @Excel({
    name: 'RoBU_Desc',
  })
  roBU_Desc: string;

  @IsNumber()
  @Excel({
    name: 'RoBU_Price',
  })
  roBU_Price: number;

  @IsString()
  @Excel({
    name: 'RoBU_Note',
  })
  roBU_Note: string;


  @IsString()
  @Excel({
    name: 'Chipset_Desc',
  })
  chipset_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Chipset_Price',
  })
  chipset_Price: number;

  @IsString()
  @Excel({
    name: 'Chipset_Note',
  })
  chipset: string;


  @IsString()
  @Excel({
    name: 'Memory_Desc',
  })
  memory_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Memory_Price',
  })
  memory_Price: number;

  @IsString()
  @Excel({
    name: 'Memory_Note',
  })
  memory_Note: string;


  @IsString()
  @Excel({
    name: 'Charger_Desc',
  })
  charger_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Charger_Price',
  })
  charger_Price: number;

  @IsString()
  @Excel({
    name: 'Charger_Note',
  })
  charger_Note: string;


  @IsString()
  @Excel({
    name: 'Battery_Desc',
  })
  battery_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Battery_Price',
  })
  battery_Price: number;

  @IsString()
  @Excel({
    name: 'Battery_Note',
  })
  battery_Note: string;


  @IsString()
  @Excel({
    name: 'Display1_Desc',
  })
  display1_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Display1_Price',
  })
  display1_Price: number;

  @IsString()
  @Excel({
    name: 'Display1_Note',
  })
  display1_Note: string;


  @IsString()
  @Excel({
    name: 'Display2_Desc',
  })
  display2_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Display2_Price',
  })
  display2_Price: number;

  @IsString()
  @Excel({
    name: 'Display2_Note',
  })
  display2_Note: string;


  @IsString()
  @Excel({
    name: 'Cam1_Desc',
  })
  cam1_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Cam1_Price',
  })
  cam1_Price: number;

  @IsString()
  @Excel({
    name: 'Cam1_Note',
  })
  cam1_Note: string;


  @IsString()
  @Excel({
    name: 'Cam2_Desc',
  })
  cam2_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Cam2_Price',
  })
  cam2_Price: number;

  @IsString()
  @Excel({
    name: 'Cam2_Note',
  })
  cam2_Note: string;


  @IsString()
  @Excel({
    name: 'Cam3_Desc',
  })
  cam3_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Cam3_Price',
  })
  cam3_Price: number;

  @IsString()
  @Excel({
    name: 'Cam3_Note',
  })
  cam3_Note: string;

  @IsString()
  @Excel({
    name: 'Cam4_Desc',
  })
  cam4_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Cam4_Price',
  })
  cam4_Price: number;

  @IsString()
  @Excel({
    name: 'Cam4_Note',
  })
  cam4_Note: string;


  @IsString()
  @Excel({
    name: 'Cam5_Desc',
  })
  cam5_Desc: string;

  @IsNumber()
  @Excel({
    name: 'Cam5_Price',
  })
  cam5_Price: number;

  @IsString()
  @Excel({
    name: 'Cam5_Note',
  })
  cam5_Note: string;


  @IsString()
  @Excel({
    name: 'FCam1_Desc',
  })
  fCam1_Desc: string;

  @IsNumber()
  @Excel({
    name: 'FCam1_Price',
  })
  fCam1_Price: number;

  @IsString()
  @Excel({
    name: 'FCam1_Note',
  })
  fCam1_Note: string;

  @IsString()
  @Excel({
    name: 'FCam2_Desc',
  })
  fCam2_Desc: string;

  @IsNumber()
  @Excel({
    name: 'FCam2_Price',
  })
  fCam2_Price: number;

  @IsString()
  @Excel({
    name: 'FCam2_Note',
  })
  fCam2_Note: string;

  @IsString()
  @Excel({
    name: 'FPS_Desc',
  })
  fps_Desc: string;

  @IsNumber()
  @Excel({
    name: 'FPS_Price',
  })
  fps_Price: number;

  @IsString()
  @Excel({
    name: 'FPS_Note',
  })
  fps_Note: string;

  @IsString()
  @Excel({
    name: 'Android',
  })
  android: string;

  @IsString()
  @Excel({
    name: 'OD',
  })
  od: string;

  @IsString()
  @Excel({
    name: 'Handbook',
  })
  handbook: string;

  @IsString()
  @Excel({
    name: 'Notes',
  })
  notes: string;
}
